package com.humi.partner.front.model;

import java.util.Date;

import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.humi.cloud.common.annotation.OBSFile;
import com.humi.cloud.mybatis.support.model.Entity;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
 * <pre>
 * <b>用户公司认证实体.</b>
 * <b>Description:</b> 
 *    
 * <b>Author:</b> zhouguangyong@360humi.com
 * <b>Date:</b> 2018年12月28日 上午11:22:35
 * <b>Copyright:</b> Copyright 2017-2018 www.360humi.com Technology Co., Ltd. All rights reserved.
 * <b>Changelog:</b>
 *   Ver   		Date                    Author               	 Detail
 *   ----------------------------------------------------------------------
 *   1.0   2018年12月28日 上午11:22:35    zhouguangyong@360humi.com     new file.
 * </pre>
 */
@OBSFile
@Data
@EqualsAndHashCode(callSuper = false)
@ApiModel("用户公司认证数据模型")
@TableName(AuthUserCompany.TABLE_NAME)
public class AuthUserCompany extends Entity<AuthUserCompany> {
	
	/** 序列化版本标识 */
	protected static final long serialVersionUID = 8189722954852538563L;
	
	public static final String TABLE_NAME = "auth_user_company"; 
	
	/** 用户ID. */
	@ApiModelProperty(notes = "用户ID")
	protected String userId;
	
	/** 公司名称. */
	@ApiModelProperty(notes = "公司名称")
	protected String name;
	
	/** 法人姓名. */
	@ApiModelProperty(notes = "法人姓名")
	protected String legalPerson;
	
	/** 法人身份证. */
	@ApiModelProperty(notes = "法人身份证")
	protected String idcardNo;
	
	/** 法人电话. */
	@ApiModelProperty(notes = "法人电话")
	protected String phone;
	
	/** 信用代码. */
	@ApiModelProperty(notes = "信用代码")
	protected String creditCode;
	
	/** 营业执照. */
	@OBSFile
	@ApiModelProperty(notes = "营业执照")
	protected String licenseImg;
	
	/** 行业ID:国标. */
	@ApiModelProperty(notes = "行业ID:国标")
	protected String industryId;
	
	/** 有效期限:start-end，yyyy-MM-dd. */
	@ApiModelProperty(hidden = true)
	protected String effectiveDate;
	
	/** 公司地址. */
	@ApiModelProperty(notes = "公司地址")
	protected String address;
	
	/** 公司LOGO. */
	@ApiModelProperty(notes = "公司LOGO")
	protected String logo;
	
	/** 公司邮编. */
	@ApiModelProperty(notes = "公司邮编")
	protected String zipCode;
	
	/** 负责人姓名. */
	@ApiModelProperty(notes = "负责人姓名")
	protected String chargePerson;
	
	/** 负责人电话. */
	@ApiModelProperty(notes = "负责人电话")
	protected String chargePhone;
	
	/** 邮箱地址. */
	@ApiModelProperty(notes = "邮箱地址")
	protected String email;
	
	@ApiModelProperty(notes = "经营范围")
	protected String scopeBusiness;

	/** 职位. */
	@ApiModelProperty(notes = "职位")
	private String position;
	
	/** 认证状态:0=未提交;1=待审核;2=认证成功;3=认证失败;4=驳回,默认0 */
	@ApiModelProperty(notes = "认证状态:0=未提交;1=待审核;2=认证成功;3=认证失败,4=驳回,默认0")
	protected Integer status;
	
	/** 审核时间. */
	@ApiModelProperty(notes = "审核时间")
	@JsonFormat()
	protected Date auditTime;
	
	/** 备注说明. */
	@ApiModelProperty(notes = "备注说明")
	protected String remark;
	
	/** 认证意见. */
	@ApiModelProperty(notes = "认证意见")
	protected String authOpinion;
	
	@ApiModelProperty(notes = "认证手机号码")
	protected String authPhone;
	
	public AuthUserCompany() {
	}
	
	public AuthUserCompany(String userId) {
		super();
		this.userId = userId;
	}

	public String getUserId() {
		return userId;
	}

	public String getName() {
		return name;
	}

	public String getLegalPerson() {
		return legalPerson;
	}

	public String getIdcardNo() {
		return idcardNo;
	}

	public String getPhone() {
		return phone;
	}

	public String getCreditCode() {
		return creditCode;
	}

	public String getLicenseImg() {
		return licenseImg;
	}

	public String getIndustryId() {
		return industryId;
	}

	public String getEffectiveDate() {
		return effectiveDate;
	}

	public String getAddress() {
		return address;
	}

	public String getLogo() {
		return logo;
	}

	public String getZipCode() {
		return zipCode;
	}

	public String getChargePerson() {
		return chargePerson;
	}

	public String getChargePhone() {
		return chargePhone;
	}

	public String getEmail() {
		return email;
	}
	
	public String getPosition() {
		return position;
	}

	public void setPosition(String position) {
		this.position = position;
	}

	public Date getAuditTime() {
		return auditTime;
	}

	public String getRemark() {
		return remark;
	}

	public void setUserId(String userId) {
		this.userId = userId;
	}

	public void setName(String name) {
		this.name = name;
	}

	public void setLegalPerson(String legalPerson) {
		this.legalPerson = legalPerson;
	}

	public void setIdcardNo(String idcardNo) {
		this.idcardNo = idcardNo;
	}

	public void setPhone(String phone) {
		this.phone = phone;
	}

	public void setCreditCode(String creditCode) {
		this.creditCode = creditCode;
	}

	public void setLicenseImg(String licenseImg) {
		this.licenseImg = licenseImg;
	}

	public void setIndustryId(String industryId) {
		this.industryId = industryId;
	}

	public void setEffectiveDate(String effectiveDate) {
		this.effectiveDate = effectiveDate;
	}

	public void setAddress(String address) {
		this.address = address;
	}

	public void setLogo(String logo) {
		this.logo = logo;
	}

	public void setZipCode(String zipCode) {
		this.zipCode = zipCode;
	}

	public void setChargePerson(String chargePerson) {
		this.chargePerson = chargePerson;
	}

	public void setChargePhone(String chargePhone) {
		this.chargePhone = chargePhone;
	}

	public void setEmail(String email) {
		this.email = email;
	}
	
	public void setAuditTime(Date auditTime) {
		this.auditTime = auditTime;
	}

	public void setRemark(String remark) {
		this.remark = remark;
	}

	public Integer getStatus() {
		return status;
	}

	public void setStatus(Integer status) {
		this.status = status;
	}
	
}
